package com.myschool.server.manager;

import java.util.Date;
import java.util.List;

import org.myschool.common.exception.ApplicationException;

import com.myschool.server.model.TimeTableEntry;
import com.myschool.server.model.TimeTableType;

public interface TimetableManager extends Manager<TimeTableEntry> {
	public List<TimeTableEntry> retrieveTimeTableBySection(int sectionID)
			throws ApplicationException;

	public List<TimeTableEntry> retrieveTimeTableBySchoolSectionDate(
			Integer schoolId, Integer sectionID, TimeTableType type,
			Date startingFrom) throws ApplicationException;

	public List<TimeTableEntry> retrieveTimeTableEntriesByDate(
			Integer sectionId, Date startingFrom, short days)
			throws ApplicationException;

	public void createTimeTable(List<TimeTableEntry> entries)
			throws ApplicationException;
}
